1. Field of the Invention
The present invention relates to a network data distribution system in which high-quality data (especially, video data) distribution is realized and capability of data transmission between a server and clients is improved in a system consisting of a server (or servers), clients, and a network, which are separately managed. This application is based on patent applications Nos. Hei8-019580 and Hei8-268252 filed in Japan, the contents of which are incorporated herein by reference.
2. Description of the Related Art
According to the spread of local area networks (abbreviated to a "LAN", hereinbelow), improvements in the properties of calculators, and development of mass storage and low priced disk devices, database systems of server-client form have recently also increased. In such a database system, a database is constructed in the server side, while a client requests information from the server when necessary. According to the request issued, data transmission and receipt are performed between the server and the client. When the client receives data which were transmitted from the server, the client decodes the data for proper use.
Recently, database systems have to handle data of not only text-form information, but also audio or video information. In particular, video data have larger data sizes than that of other media, even if the video data have been preprocessed and stored by using a compressive encoding method; thus, it is not practical to adopt, for example, a file transfer method in which all data are once transmitted to a client and then any data are read out. Therefore, another method has been generally adopted, in which data necessary for a client to perform real-time data decoding and regeneration are continuously supplied from the server. In this method, the server side controls the rate of supplying data, while the client has only to receive and regenerate the data.
However, in order to provide a stable video distribution service by using a conventional database system performing video distribution, it is necessary to establish a system construction including a high-quality server for assuring plural clients of stable data-supply; a network having a secured transmission band in which data transmission is not affected by other traffic; and clients having uniform properties for regenerating all the supplied data. These requirements are based on the premise that the data transmission is performed in an ideal system circumstance without consideration of other external factors. However, also from a point of efficiency or economical view, it is desired to realize a video distribution system under existing circumstances.
Here, the "existing circumstance" is defined for each of the server, the network, and the clients, individually. As to the server, a general computer connected to an existing network is assumed, and such a general computer can also be used for a use other than for the video distribution. As to the network, it can also be used for another use other than for the video distribution, and in the network, a band necessary for video data transfer is not always ensured. In addition, another situation is also assumed, in which under a circumstance in which plural networks are connected to each other, data transmission from a server to an client is performed via plural networks. As to the clients, existing computers such as PCs (personal computers) or WSs (work stations) are assumed, which may have an exclusive hardware for decoding encoded video data, or which may be operated based on software. Regarding the software-base, the client may easily suffer an effect such that the condition of resources (the CPU, memories, and the like) may sometimes changed in accordance with internal or external processing situations.
On the other hand, it is not necessary that the server and the client be in a one-to-one correspondence during data transmission, and various systems which can supply data for plural clients at once have been realized. FIG. 8 shows an example of the server-clients data transmission system, which includes a server 101 for providing data by using transmitter 121, and four clients 111, 112, 113, and 114, connected to the server via network 3, for receiving data by using receivers 131, 132, 133, and 134. Such a data transmission system can be applied to the above video distribution service.
Furthermore, another type of transmission system having plural servers, that is, a system in which the number of servers is not limited to one, has been realized. In such a system, the data which are the same as those provided by a server are duplicated to other servers. In this system, a client can obtain the same data by accessing any server in the system.
However, the above-described server-clients data transmission system has some problems to be solved.
The first problem is lowering of the data-transmitting capability of a server due to overload of the server, that is, excess of access by the clients. If simultaneous data supply operations for plural clients are permitted, the load borne by the server increases according to the increase of the number of clients which access the server. If the load borne by the server exceeds an allowable amount decided for normal data supply, data supply from the server to the clients may be delayed, or may further be stopped. That is, the lowering of capability (or throughput) of the server due to the overload disturbs normal data supply.
The second problem relates to a conventional transmission system comprising plural servers which have the same data (i.e., mirror servers). This conventional system has an effect of dispersing the load. However, it is necessary to maintain the situation that all the servers have the same data; thus, whenever the data to be provided are changed, the data must be duplicated to all the servers. This is the second problem.
The third problem relates to a case in which permission of access by clients to the server is limited. When the access to the server is limited to protect system-security, a client which is not permitted to access the server cannot acquire data.